Fast growth of the pervasive computing and handheld/communication industry generates exploding demand for high capacity nonvolatile solid-state data storage devices. Flash memory is one such device but has several drawbacks such as slow access speed (˜ms write and ˜50-100 ns read), limited endurance (˜103-104 programming cycles), and the integration difficulty in system-on-chip (SoC). Flash memory (NAND or NOR) also faces significant scaling problems at 32 nm node and beyond.
Magneto-resistive Random Access Memory (MRAM) is another candidate for nonvolatile and universal memory. MRAM features non-volatility, fast writing/reading speed (<10 ns), almost unlimited programming endurance (>1015 cycles) and zero standby power. The basic component of MRAM is a magnetic tunneling junction (MTJ). Data storage is realized by switching the resistance of MTJ between a high-resistance state and a low-resistance state. MRAM switches the MTJ resistance by using a current induced magnetic field to switch the magnetization of MTJ. As the MTJ size shrinks, the switching magnetic field amplitude increases and the switching variation becomes more severe.
Spin polarization current can be used to induce magnetization switching in MRAM designs. Spin-Torque Transfer RAM (STRAM), uses a (bidirectional) current through the MTJ to realize the resistance switching. The switching mechanism of STRAM is constrained locally and STRAM is believed to have a better scaling property than the conventional MRAM. However, reading a STRAM cell is challenging as the cell is scaled down.